In [1]:
import numpy as np
import glob
import sys
import time
import datetime
import os
import pickle

In [20]:
import matplotlib.pyplot as plt
%matplotlib inline

Utilities


In [2]:
def printError(*arg):
    print('Error:', *arg, file=sys.stderr)
    
def printDebug(*arg):
    print('Debug:', *arg, file=sys.stderr)
    
def printWarning(*arg):
    print('Warning:', *arg, file=sys.stderr)

Hardware interface


In [3]:
class ElectronicsInterface:
    def __init__(self, gpio_pin=18, sensor=None):
        self.pin = gpio_pin
        self.sensor = None
        self.GPIO = None
        
        if sensor is None:
            temperature_sensors = glob.glob('/sys/bus/w1/devices/28-*/w1_slave')
            
            if len(temperature_sensors) > 1:
                printError('multiple temperature sensors found, please specify - entering fake mode')
                return
            elif len(temperature_sensors) == 0:
                printError('temperature sensor cannot be found - entering fake mode')
                return
            else:
                printDebug('temperature sensor found: ' + temperature_sensors[0])
                sensor = temperature_sensors[0]
        
        self.sensor = sensor
        
        try:
            self.read_temperature()
        except:
            printError('temperature sensor cannot be read - entering fake mode.')
            self.sensor = None
            return
        
        try:
            import RPi.GPIO as GPIO
            
            GPIO.setmode(GPIO.BCM)
            GPIO.setup(gpio_pin, GPIO.OUT, initial=GPIO.LOW)
            
            self.GPIO = GPIO
            
            printDebug('GPIO up and running')
        except:
            self.GPIO = None
            printError('GPIO not working - entering fake mode')
            
    def read_temperature(self):
        if self.sensor is not None:
            with open(self.sensor, 'r') as f:
                lines = f.readlines()
        else:
            lines = ['69 01 ff ff 7f ff ff ff 7e : crc=7e YES\n', '69 01 ff ff 7f ff ff ff 7e t=22562\n']
            
        if lines[0].strip()[-3:] == 'YES':
            self.temperature = int(lines[1].strip().split('=')[1]) / 1000
        else:
            self.temperature = np.nan
            printWarning('no temperature read')
            
        return self.temperature
    
    def write_relay(self, value):
        if self.GPIO is not None:
            self.GPIO.output(self.pin, value)
            
    def close(self):
        if self.GPIO is not None:
            self.GPIO.cleanup(self.pin)

In [4]:
interface = ElectronicsInterface()


Debug: temperature sensor found: /sys/bus/w1/devices/28-80000026d00e/w1_slave
Debug: GPIO up and running

In [5]:
interface.write_relay(False)

Let's collect some data!


In [19]:
temperatures = []

In [20]:
relay_on = True

interface.write_relay(True)

# run for an hour max
for i in range(3600):
    temperature = interface.read_temperature()
    temperatures.append(temperature)
    print(temperature)
    
    if relay_on and temperature >= 50:
        interface.write_relay(False)
        relay_on = False
        
    if os.path.exists('/tmp/stop'):
        break
    
    time.sleep(1)
    
if relay_on:
    interface.write_relay(False)
    relay_on = False


22.437
22.375
22.437
22.437
22.375
22.375
22.437
22.437
22.437
22.437
22.437
22.375
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.375
22.437
22.437
22.437
22.437
22.437
22.437
22.375
22.375
22.437
22.375
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.375
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.437
22.5
22.437
22.5
22.5
22.5
22.562
22.5
22.562
22.562
22.562
22.562
22.625
22.625
22.625
22.687
22.687
22.75
22.812
22.812
22.875
22.875
22.875
22.937
22.937
22.937
23.0
23.0
23.0
23.0
23.062
23.125
23.125
23.125
23.187
23.187
23.187
23.25
23.312
23.312
23.312
23.375
23.437
23.5
23.562
23.625
23.687
23.75
23.812
23.812
23.875
23.875
23.875
23.875
23.937
23.937
23.937
23.937
24.0
24.0
24.062
24.062
24.062
24.062
24.125
24.125
24.187
24.187
24.25
24.312
24.312
24.375
24.375
24.437
24.437
24.5
24.5
24.562
24.625
24.687
24.687
24.812
24.812
24.875
24.937
25.0
25.062
25.125
25.187
25.187
25.25
25.25
25.312
25.312
25.375
25.437
25.437
25.5
25.5
25.562
25.562
25.625
25.625
25.687
25.75
25.812
25.875
25.875
25.937
26.0
26.062
26.125
26.125
26.187
26.25
26.312
26.375
26.437
26.5
26.562
26.625
26.625
26.625
26.687
26.75
26.75
26.75
26.812
26.875
26.875
26.937
27.0
27.062
27.125
27.187
27.187
27.25
27.375
27.437
27.5
27.562
27.687
27.687
27.812
27.875
27.937
28.0
28.062
28.125
28.187
28.25
28.312
28.375
28.5
28.562
28.562
28.625
28.75
28.812
28.875
28.937
29.0
29.062
29.125
29.187
29.187
29.25
29.312
29.375
29.375
29.437
29.5
29.625
29.75
29.75
29.875
29.875
29.937
29.937
30.0
30.062
30.125
30.187
30.187
30.25
30.312
30.375
30.437
30.5
30.625
30.687
30.75
30.812
30.875
30.937
31.0
31.062
31.187
31.25
31.375
31.562
31.75
31.875
32.0
32.062
32.125
32.125
32.187
32.25
32.312
32.375
32.437
32.437
32.5
32.562
32.562
32.625
32.687
32.75
32.812
32.875
32.937
33.0
33.062
33.062
33.125
33.187
33.25
33.312
33.375
33.375
33.437
33.5
33.625
33.687
33.75
33.812
33.937
34.0
34.062
34.187
34.25
34.312
34.375
34.437
34.562
34.625
34.687
34.812
34.875
34.937
35.0
35.062
35.187
35.25
35.375
35.437
35.562
35.625
35.687
35.75
35.812
35.875
35.937
36.0
36.062
36.125
36.187
36.25
36.25
36.312
36.375
36.437
36.437
36.5
36.625
36.687
36.75
36.812
36.875
37.0
37.062
37.125
37.187
37.25
37.375
37.437
37.562
37.625
37.75
37.812
37.937
38.062
38.125
38.187
38.25
38.375
38.437
38.5
38.562
38.687
38.75
38.812
38.937
39.0
39.062
39.125
39.187
39.25
39.312
39.437
39.5
39.562
39.625
39.625
39.687
39.75
39.75
39.812
39.875
39.937
40.0
40.062
40.125
40.25
40.375
40.437
40.562
40.625
40.687
40.75
40.812
40.937
41.0
41.062
41.125
41.25
41.375
41.437
41.562
41.625
41.75
41.812
41.875
42.0
42.062
42.187
42.25
42.375
42.5
42.562
42.625
42.687
42.75
42.812
42.875
42.937
42.937
43.0
43.062
43.187
43.25
43.312
43.375
43.437
43.5
43.625
43.687
43.687
43.812
43.937
44.0
44.062
44.187
44.25
44.375
44.5
44.562
44.687
44.75
44.812
44.875
44.937
45.062
45.125
45.25
45.375
45.437
45.437
45.5
45.625
45.687
45.812
45.875
46.0
46.062
46.125
46.25
46.312
46.375
46.437
46.5
46.625
46.75
46.875
46.875
46.937
47.0
47.062
47.062
47.187
47.25
47.312
47.312
47.375
47.5
47.562
47.625
47.687
47.812
47.875
47.937
48.062
48.125
48.187
48.312
48.375
48.437
48.562
48.625
48.75
48.812
48.875
48.937
49.062
49.062
49.187
49.25
49.25
49.312
49.375
49.437
49.562
49.625
49.75
49.812
49.875
49.937
50.0
50.062
50.187
50.25
50.312
50.375
50.5
50.562
50.625
50.812
50.812
50.875
50.937
51.0
51.062
51.125
51.25
51.375
51.437
51.562
51.687
51.75
51.812
51.875
51.937
52.0
52.125
52.125
52.187
52.25
52.312
52.375
52.375
52.5
52.562
52.625
52.687
52.75
52.875
52.937
53.062
53.125
53.125
53.187
53.25
53.312
53.375
53.437
53.5
53.562
53.625
53.687
53.75
53.812
53.875
53.937
54.0
54.062
54.125
54.187
54.25
54.375
54.375
54.437
54.562
54.562
54.625
54.687
54.687
54.75
54.75
54.812
54.812
54.875
54.875
54.875
55.0
55.0
55.125
55.125
55.187
55.25
55.25
55.312
55.375
55.375
55.5
55.562
55.625
55.625
55.687
55.687
55.75
55.875
56.0
56.062
56.125
56.125
56.187
56.25
56.312
56.312
56.312
56.375
56.375
56.437
56.437
56.5
56.5
56.562
56.562
56.625
56.625
56.687
56.687
56.75
56.812
56.812
56.875
56.937
56.937
57.0
57.062
57.125
57.125
57.187
57.187
57.187
57.25
57.25
57.25
57.25
57.312
57.312
57.375
57.375
57.375
57.437
57.437
57.5
57.562
57.625
57.625
57.687
57.687
57.75
57.75
57.75
57.75
57.812
57.812
57.812
57.812
57.875
57.875
57.875
57.937
57.937
57.937
58.0
58.0
58.062
58.062
58.062
58.125
58.125
58.187
58.125
58.187
58.187
58.25
58.25
58.25
58.312
58.312
58.312
58.312
58.375
58.375
58.375
58.437
58.437
58.5
58.437
58.5
58.562
58.562
58.562
58.625
58.625
58.625
58.625
58.687
58.687
58.687
58.687
58.687
58.75
58.75
58.812
58.812
58.812
58.875
58.875
58.937
58.937
58.937
58.937
59.0
59.0
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.125
59.125
59.187
59.187
59.187
59.187
59.187
59.187
59.25
59.25
59.25
59.312
59.312
59.312
59.312
59.375
59.375
59.375
59.437
59.437
59.5
59.5
59.5
59.5
59.562
59.562
59.5
59.562
59.562
59.562
59.625
59.625
59.625
59.625
59.687
59.625
59.687
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.812
59.875
59.812
59.875
59.875
59.875
59.937
59.937
59.937
59.937
59.875
59.875
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
60.0
60.0
60.0
60.062
60.0
60.0
60.062
60.0
60.0
60.0
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.125
60.062
60.125
60.125
60.125
60.187
60.187
60.187
60.187
60.187
60.187
60.25
60.187
60.25
60.25
60.25
60.25
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.375
60.312
60.312
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.437
60.375
60.437
60.437
60.437
60.437
60.375
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.5
60.5
60.5
60.5
60.5
60.437
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.687
60.687
60.687
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.625
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.75
60.687
60.75
60.687
60.75
60.687
60.75
60.75
60.75
60.687
60.75
60.75
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.75
60.687
60.75
60.75
60.75
60.687
60.687
60.75
60.687
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.812
60.75
60.75
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.75
60.75
60.75
60.812
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.687
60.687
60.687
60.75
60.75
60.75
60.687
60.75
60.75
60.75
60.75
60.75
60.812
60.812
60.75
60.812
60.812
60.75
60.75
60.812
60.75
60.75
60.812
60.812
60.75
60.812
60.75
60.812
60.812
60.812
60.75
60.812
60.75
60.812
60.812
60.812
60.75
60.75
60.812
60.812
60.75
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.75
60.812
60.75
60.812
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.812
60.75
60.812
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.75
60.687
60.75
60.687
60.75
60.75
60.75
60.75
60.75
60.687
60.687
60.75
60.75
60.687
60.75
60.75
60.75
60.75
60.75
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.625
60.687
60.625
60.687
60.687
60.687
60.625
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.687
60.625
60.687
60.687
60.687
60.625
60.687
60.625
60.687
60.687
60.687
60.625
60.625
60.625
60.625
60.625
60.562
60.625
60.625
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.625
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.562
60.5
60.562
60.562
60.562
60.562
60.562
60.5
60.5
60.562
60.562
60.562
60.562
60.562
60.5
60.5
60.5
60.5
60.562
60.562
60.562
60.562
60.562
60.5
60.562
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.5
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.437
60.375
60.375
60.375
60.375
60.375
60.437
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.375
60.312
60.312
60.375
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.25
60.25
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.312
60.25
60.312
60.312
60.312
60.312
60.25
60.312
60.25
60.312
60.312
60.25
60.25
60.25
60.25
60.25
60.25
60.25
60.25
60.25
60.187
60.25
60.25
60.187
60.25
60.25
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.187
60.125
60.187
60.187
60.125
60.187
60.187
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.125
60.062
60.062
60.062
60.125
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.062
60.0
60.062
60.062
60.0
60.0
60.062
60.062
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
60.0
59.937
59.937
60.0
60.0
60.0
60.0
59.937
60.0
60.0
60.0
60.0
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.937
59.875
59.937
59.875
59.875
59.937
59.875
59.875
59.875
59.875
59.875
59.875
59.875
59.875
59.875
59.875
59.875
59.875
59.812
59.875
59.875
59.875
59.875
59.875
59.812
59.875
59.875
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.812
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.75
59.687
59.75
59.75
59.687
59.75
59.75
59.75
59.75
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.687
59.625
59.687
59.687
59.687
59.687
59.687
59.687
59.625
59.687
59.625
59.687
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.625
59.562
59.562
59.562
59.625
59.625
59.625
59.625
59.625
59.562
59.625
59.562
59.625
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.562
59.5
59.562
59.562
59.562
59.562
59.562
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.5
59.437
59.437
59.5
59.5
59.5
59.437
59.437
59.437
59.5
59.5
59.5
59.5
59.5
59.437
59.437
59.437
59.437
59.437
59.437
59.437
59.437
59.437
59.437
59.437
59.437
59.375
59.437
59.437
59.375
59.437
59.375
59.375
59.375
59.375
59.375
59.375
59.375
59.375
59.375
59.375
59.375
59.312
59.375
59.375
59.375
59.375
59.375
59.375
59.375
59.312
59.375
59.375
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.25
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.312
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.187
59.25
59.25
59.25
59.25
59.25
59.25
59.25
59.187
59.25
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.187
59.125
59.187
59.187
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.125
59.062
59.125
59.062
59.125
59.125
59.125
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.062
59.0
59.0
59.0
59.062
59.062
59.0
59.062
59.0
59.0
59.0
59.062
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
59.0
58.937
59.0
59.0
59.0
58.937
59.0
58.937
58.937
58.937
58.937
58.937
58.937
58.937
58.937
58.875
58.937
58.937
58.937
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.812
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.875
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.812
58.75
58.75
58.812
58.75
58.75
58.75
58.75
58.75
58.75
58.75
58.75
58.75
58.687
58.687
58.75
58.687
58.75
58.687
58.75
58.75
58.75
58.75
58.687
58.687
58.687
58.75
58.687
58.687
58.687
58.687
58.687
58.687
58.687
58.625
58.687
58.687
58.687
58.687
58.687
58.625
58.687
58.625
58.687
58.625
58.687
58.625
58.625
58.625
58.625
58.625
58.625
58.625
58.625
58.625
58.625
58.625
58.562
58.625
58.625
58.625
58.562
58.625
58.625
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.562
58.5
58.562
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.5
58.437
58.437
58.437
58.437
58.437
58.437
58.437
58.437
58.437
58.437
58.437
58.437
58.375
58.375
58.437
58.437
58.437
58.437
58.437
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.375
58.312
58.375
58.312
58.375
58.375
58.375
58.375
58.375
58.312
58.312
58.375
58.312
58.312
58.312
58.312
58.312
58.312
58.312
58.312
58.25
58.312
58.312
58.312
58.312
58.312
58.312
58.25
58.25
58.25
58.25
58.25
58.25
58.25
58.25
58.25
58.25
58.187
58.25
58.25
58.25
58.25
58.187
58.25
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.187
58.125
58.187
58.187
58.187
58.187
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.125
58.062
58.125
58.125
58.062
58.125
58.062
58.062
58.125
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.062
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
58.0
57.937
58.0
57.937
57.937
58.0
57.937
58.0
58.0
57.937
58.0
58.0
57.937
57.937
57.937
57.937
57.937
57.937
57.937
57.937
57.937
57.937
57.937
57.937
57.875
57.937
57.875
57.937
57.937
57.937
57.937
57.937
57.875
57.937
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.875
57.812
57.812
57.812
57.812
57.812
57.812
57.812
57.812
57.812
57.812
57.75
57.812
57.812
57.75
57.812
57.812
57.812
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.687
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.75
57.687
57.687
57.75
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.625
57.625
57.687
57.687
57.687
57.687
57.687
57.687
57.687
57.625
57.625
57.625
57.625
57.625
57.625
57.625
57.562
57.625
57.625
57.625
57.625
57.625
57.562
57.625
57.625
57.562
57.562
57.625
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.562
57.5
57.562
57.562
57.5
57.5
57.562
57.562
57.562
57.5
57.562
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.5
57.437
57.5
57.5
57.5
57.437
57.5
57.437
57.437
57.5
57.437
57.437
57.437
57.437
57.437
57.437
57.437
57.437
57.437
57.437
57.437
57.437
57.375
57.437
57.375
57.437
57.437
57.375
57.437
57.375
57.375
57.437
57.437
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.375
57.312
57.312
57.375
57.312
57.375
57.312
57.312
57.312
57.312
57.312
57.312
57.312
57.312
57.312
57.25
57.312
57.25
57.312
57.312
57.312
57.312
57.312
57.312
57.312
57.312
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.25
57.187
57.25
57.25
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.187
57.125
57.125
57.187
57.187
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.125
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.062
57.0
57.0
57.0
57.0
57.062
57.062
57.0
57.0
57.0
57.0
57.0
57.0
57.0
57.0
57.0
57.0
56.937
57.0
57.0
57.0
57.0
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.937
56.875
56.937
56.937
56.875
56.937
56.875
56.875
56.937
56.875
56.875
56.937
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.875
56.812
56.875
56.812
56.875
56.875
56.812
56.875
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.812
56.75
56.812
56.812
56.812
56.75
56.812
56.812
56.812
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.687
56.75
56.687
56.75
56.687
56.75
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.625
56.625
56.687
56.625
56.687
56.625
56.687
56.625
56.687
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.625
56.625
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.5
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.5
56.5
56.562
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.437
56.5
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.375
56.437
56.437
56.375
56.375
56.437
56.437
56.437
56.375
56.437
56.437
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.312
56.375
56.375
56.375
56.312
56.312
56.375
56.375
56.375
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.25
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.187
56.187
56.25
56.25
56.25
56.25
56.187
56.25
56.25
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.125
56.125
56.187
56.187
56.125
56.125
56.187
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.062
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.062
56.125
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.0
56.0
56.062
56.062
56.0
56.0
56.062
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
55.937
56.0
56.0
56.0
56.0
56.0
56.0
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.875
55.875
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.812
55.875
55.875
55.875
55.875
55.875
55.812
55.875
55.812
55.875
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.75
55.812
55.812
55.812
55.812
55.812
55.75
55.75
55.812
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.687
55.75
55.75
55.75
55.75
55.75
55.687
55.75
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.625
55.687
55.687
55.625
55.687
55.687
55.687
55.625
55.687
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.562
55.625
55.625
55.562
55.562
55.625
55.625
55.625
55.625
55.625
55.562
55.562
55.562
55.625
55.625
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.5
55.562
55.5
55.562
55.562
55.5
55.562
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.437
55.5
55.437
55.437
55.5
55.5
55.5
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.312
55.375
55.312
55.375
55.312
55.312
55.375
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.25
55.312
55.312
55.312
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.187
55.187
55.187
55.25
55.187
55.25
55.25
55.25
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.125
55.187
55.187
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.062
55.125
55.125
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.0
55.0
55.062
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
54.937
54.937
55.0
54.937
54.937
55.0
54.937
55.0
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.875
54.937
54.875
54.937
54.937
54.937
54.937
54.875
54.937
54.875
54.937
54.875
54.937
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.812
54.875
54.875
54.812
54.875
54.875
54.812
54.875
54.875
54.875
54.875
54.875
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.75
54.812
54.812
54.812
54.75
54.812
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.687
54.75
54.687
54.687
54.75
54.75
54.75
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.625
54.687
54.625
54.687
54.687
54.625
54.687
54.687
54.687
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.5
54.562
54.562
54.562
54.5
54.562
54.562
54.5
54.562
54.562
54.562
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.437
54.437
54.437
54.5
54.437
54.437
54.5
54.437
54.5
54.5
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.312
54.312
54.312
54.375
54.375
54.312
54.312
54.312
54.375
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.25
54.312
54.25
54.25
54.312
54.312
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.187
54.25
54.187
54.187
54.25
54.25
54.25
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.125

In [23]:
interface.read_temperature()


Out[23]:
48.125

In [39]:
with open('temperature1.pkl', 'wb') as f:
    pickle.dump(np.array(temperatures), f)

In [41]:
with open('temperature1.csv', 'w') as f:
    for v in temperatures:
        f.write(str(v) + '\n')

In [40]:
interface.close()

Investiage


In [33]:
with open('temperature1.pkl', 'rb') as f:
    temperatures = pickle.load(f)

In [34]:
fig = plt.figure()
plt.plot(temperatures)


Out[34]:
[<matplotlib.lines.Line2D at 0x6f362630>]

In [35]:
max(temperatures)


Out[35]:
60.811999999999998

In [36]:
np.where(np.array(temperatures) > 50)[0][0]


Out[36]:
522

In [37]:
c = 4190
m = 1
dT = max(temperatures) - min(temperatures)
dQ = c * m * dT
P = 400
t = np.where(np.array(temperatures) > 50)[0][0]
E = P * t
nu = dQ / E
print('Wirkungsgrad:', nu)


Wirkungsgrad: 0.771317193487

In [38]:
dQ


Out[38]:
161051.03

In [39]:
dT


Out[39]:
38.436999999999998

In [40]:
t


Out[40]:
522

Second Data Collection: Simple hysteresis control


In [69]:
temperatures = []

In [70]:
target_temperature = 50

In [71]:
dT = target_temperature - interface.read_temperature()

In [72]:
dQ = c * m * dT
boost_time = dQ / (P * nu)

In [73]:
boost_time


Out[73]:
36.504826079038459

In [74]:
is_boosting = True
is_controlling = False

relay_on = True

interface.write_relay(True)

start_time = datetime.datetime.now()
last_temp = 0

# run for an two hours max
for i in range(3600 * 3):
    now = datetime.datetime.now()
    temperature = interface.read_temperature()
    temperatures.append((now, temperature, relay_on))
    print(temperature)
    
    if is_boosting:
        if i > boost_time:
            if relay_on:
                interface.write_relay(False)
                relay_on = False
                print('Reached boost time, turning off:', now)
            elif last_temp > temperature:
                print('Temperature falling again, starting control:', now)
                is_boosting = False
                is_controlling = True
                
        last_temp = temperature
    elif is_controlling:
        if i >= 3600 * 3:
            is_controlling = False
            print('Stopping controlling:', now)
            
            if relay_on:
                interface.write_relay(False)
                relay_on = False
            
        elif relay_on and temperature >= target_temperature:
            interface.write_relay(False)
            relay_on = False
        elif not relay_on and temperature < target_temperature:
            interface.write_relay(True)
            relay_on = True
            
        
    if os.path.exists('/tmp/stop'):
        break
        
    sleep_time = i + 1 - (datetime.datetime.now() - start_time).total_seconds()
    
    time.sleep(sleep_time)
    
if relay_on:
    interface.write_relay(False)
    relay_on = False


47.187
47.187
47.187
47.187
47.187
47.187
47.187
47.187
47.187
47.187
47.125
47.187
47.187
47.187
47.187
47.187
47.125
47.187
47.187
47.125
47.125
47.125
47.187
47.125
47.187
47.125
47.125
47.125
47.125
47.125
47.125
47.125
47.125
47.125
47.125
47.125
47.125
47.125
Reached boost time, turning off: 2017-01-07 20:20:35.132995
47.125
47.125
47.125
47.187
47.187
47.187
47.187
47.25
47.25
47.312
47.312
47.312
47.375
47.375
47.375
47.437
47.437
47.437
47.437
47.437
47.437
47.437
47.437
47.5
47.5
47.5
47.5
47.5
47.562
47.562
47.562
47.562
47.562
47.562
47.562
47.5
Temperature falling again, starting control: 2017-01-07 20:21:11.133009
47.562
47.5
47.5
47.5
47.5
47.5
47.5
47.437
47.437
47.437
47.437
47.437
47.437
47.437
47.437
47.437
47.5
47.437
47.5
47.5
47.5
47.562
47.562
47.562
47.625
47.625
47.625
47.625
47.687
47.687
47.687
47.75
47.687
47.75
47.75
47.687
47.687
47.687
47.75
47.687
47.687
47.687
47.75
47.75
47.687
47.687
47.75
47.75
47.75
47.812
47.75
47.812
47.812
47.812
47.812
47.812
47.875
47.875
47.875
47.937
47.937
47.937
47.937
47.937
48.0
48.0
48.0
48.0
48.062
48.125
48.125
48.125
48.187
48.187
48.25
48.25
48.25
48.312
48.312
48.312
48.312
48.375
48.437
48.437
48.5
48.5
48.562
48.625
48.687
48.75
48.75
48.812
48.812
48.875
48.937
48.937
49.0
49.0
49.062
49.062
49.125
49.125
49.187
49.25
49.312
49.312
49.375
49.437
49.5
49.5
49.562
49.562
49.625
49.625
49.687
49.687
49.75
49.75
49.75
49.75
49.812
49.875
49.875
49.875
49.937
50.0
50.0
50.062
50.062
50.187
50.187
50.312
50.375
50.437
50.437
50.5
50.562
50.562
50.562
50.562
50.625
50.625
50.625
50.687
50.687
50.75
50.75
50.812
50.812
50.875
50.875
50.937
50.937
51.0
51.062
51.125
51.25
51.312
51.375
51.437
51.562
51.625
51.687
51.687
51.75
51.812
51.875
52.0
52.062
52.062
52.125
52.125
52.187
52.187
52.187
52.25
52.312
52.312
52.312
52.375
52.437
52.437
52.437
52.437
52.5
52.5
52.5
52.562
52.562
52.562
52.562
52.625
52.625
52.625
52.625
52.625
52.687
52.687
52.75
52.75
52.812
52.812
52.812
52.875
52.875
52.937
53.0
53.0
53.062
53.125
53.187
53.25
53.312
53.375
53.437
53.437
53.5
53.562
53.562
53.625
53.625
53.687
53.687
53.687
53.75
53.75
53.75
53.812
53.75
53.812
53.812
53.812
53.875
53.875
53.875
53.875
53.937
53.937
53.937
54.0
54.0
54.0
54.062
54.062
54.062
54.125
54.125
54.125
54.125
54.187
54.187
54.187
54.25
54.312
54.312
54.375
54.375
54.437
54.437
54.437
54.5
54.5
54.5
54.562
54.562
54.562
54.562
54.625
54.625
54.625
54.625
54.687
54.687
54.687
54.75
54.75
54.75
54.812
54.812
54.812
54.875
54.875
54.875
54.937
54.937
55.0
55.0
55.062
55.062
55.125
55.125
55.125
55.125
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.25
55.25
55.25
55.25
55.312
55.25
55.25
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.375
55.375
55.375
55.375
55.437
55.437
55.437
55.437
55.437
55.5
55.5
55.5
55.562
55.562
55.562
55.562
55.625
55.625
55.625
55.687
55.687
55.687
55.687
55.687
55.75
55.75
55.75
55.75
55.75
55.75
55.812
55.812
55.75
55.812
55.812
55.812
55.812
55.812
55.812
55.875
55.875
55.875
55.875
55.875
55.937
55.937
55.937
55.875
55.937
55.937
55.875
55.937
55.937
55.937
55.937
55.937
55.937
55.937
56.0
55.937
56.0
56.0
56.0
56.062
56.062
56.062
56.0
56.0
56.062
56.062
56.062
56.062
56.062
56.062
56.125
56.062
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.187
56.187
56.187
56.125
56.187
56.187
56.187
56.187
56.187
56.187
56.25
56.25
56.25
56.25
56.25
56.312
56.312
56.312
56.375
56.375
56.312
56.375
56.375
56.375
56.375
56.437
56.437
56.437
56.375
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.562
56.5
56.5
56.562
56.562
56.562
56.5
56.562
56.562
56.562
56.5
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.687
56.625
56.687
56.625
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.625
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.625
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.75
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.625
56.687
56.625
56.625
56.625
56.625
56.687
56.625
56.625
56.625
56.625
56.687
56.625
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.75
56.75
56.687
56.75
56.75
56.75
56.687
56.75
56.687
56.75
56.75
56.687
56.687
56.75
56.687
56.75
56.687
56.687
56.75
56.75
56.75
56.687
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.75
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.687
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.562
56.625
56.625
56.625
56.562
56.625
56.562
56.625
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.625
56.625
56.562
56.562
56.562
56.562
56.562
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.562
56.562
56.625
56.562
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.562
56.625
56.625
56.625
56.562
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.625
56.562
56.625
56.625
56.562
56.625
56.625
56.625
56.625
56.625
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.562
56.5
56.5
56.5
56.562
56.562
56.562
56.562
56.5
56.5
56.562
56.562
56.562
56.562
56.5
56.562
56.562
56.562
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.5
56.437
56.5
56.5
56.437
56.5
56.437
56.5
56.5
56.5
56.5
56.5
56.437
56.437
56.5
56.437
56.5
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.437
56.375
56.375
56.437
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.437
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.375
56.312
56.375
56.375
56.375
56.375
56.375
56.312
56.375
56.375
56.375
56.375
56.375
56.375
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.25
56.312
56.25
56.25
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.312
56.25
56.312
56.25
56.312
56.312
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.187
56.187
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.25
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.187
56.125
56.125
56.187
56.187
56.187
56.187
56.125
56.187
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.125
56.062
56.125
56.125
56.062
56.125
56.062
56.125
56.062
56.125
56.125
56.062
56.125
56.125
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.0
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.062
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
56.0
55.937
56.0
56.0
56.0
56.0
55.937
56.0
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.937
55.875
55.937
55.937
55.937
55.937
55.875
55.875
55.937
55.937
55.937
55.937
55.937
55.937
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.875
55.812
55.812
55.875
55.812
55.875
55.875
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.75
55.75
55.812
55.812
55.812
55.812
55.812
55.812
55.812
55.75
55.812
55.75
55.75
55.812
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.75
55.687
55.75
55.75
55.75
55.687
55.75
55.75
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.625
55.625
55.687
55.687
55.687
55.625
55.625
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.687
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.625
55.562
55.562
55.562
55.625
55.625
55.625
55.562
55.625
55.625
55.625
55.625
55.625
55.562
55.562
55.625
55.562
55.625
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.562
55.5
55.562
55.5
55.5
55.562
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.5
55.437
55.5
55.5
55.5
55.437
55.5
55.5
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.437
55.375
55.437
55.437
55.437
55.437
55.437
55.437
55.375
55.437
55.375
55.437
55.375
55.437
55.437
55.437
55.375
55.437
55.437
55.437
55.437
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.375
55.312
55.375
55.375
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.312
55.25
55.312
55.312
55.312
55.25
55.312
55.312
55.312
55.312
55.312
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.25
55.187
55.25
55.25
55.25
55.187
55.187
55.25
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.187
55.125
55.187
55.125
55.187
55.187
55.187
55.187
55.187
55.125
55.187
55.187
55.187
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.125
55.062
55.125
55.125
55.062
55.062
55.062
55.125
55.125
55.125
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.062
55.0
55.062
55.0
55.0
55.062
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
55.0
54.937
55.0
55.0
55.0
55.0
54.937
54.937
55.0
55.0
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.875
54.937
54.875
54.937
54.937
54.937
54.937
54.937
54.937
54.937
54.875
54.937
54.937
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.812
54.875
54.812
54.812
54.875
54.875
54.875
54.812
54.875
54.812
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.875
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.812
54.75
54.812
54.812
54.812
54.812
54.812
54.75
54.812
54.75
54.812
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.75
54.687
54.75
54.75
54.75
54.687
54.75
54.75
54.75
54.75
54.687
54.75
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.687
54.625
54.687
54.687
54.625
54.625
54.687
54.625
54.625
54.625
54.687
54.625
54.687
54.687
54.687
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.562
54.562
54.625
54.562
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.625
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.5
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.562
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.5
54.437
54.5
54.437
54.437
54.5
54.5
54.5
54.437
54.5
54.437
54.437
54.437
54.5
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.437
54.375
54.375
54.375
54.437
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.375
54.312
54.375
54.375
54.312
54.375
54.375
54.375
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.312
54.25
54.312
54.25
54.312
54.25
54.312
54.25
54.312
54.25
54.25
54.312
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.25
54.187
54.25
54.25
54.25
54.187
54.25
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.187
54.125
54.187
54.187
54.125
54.187
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.062
54.125
54.125
54.125
54.125
54.125
54.125
54.125
54.062
54.125
54.125
54.125
54.125
54.062
54.062
54.125
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.062
54.0
54.062
54.062
54.062
54.062
54.062
54.062
54.0
54.062
54.062
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
54.0
53.937
54.0
54.0
54.0
54.0
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.937
53.875
53.875
53.875
53.937
53.937
53.937
53.937
53.937
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.875
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.812
53.75
53.812
53.75
53.812
53.812
53.812
53.75
53.812
53.75
53.812
53.75
53.75
53.812
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.75
53.687
53.75
53.75
53.75
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.687
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.625
53.562
53.625
53.562
53.625
53.625
53.562
53.625
53.562
53.562
53.562
53.625
53.625
53.562
53.562
53.562
53.562
53.562
53.562
53.562
53.562
53.562
53.562
53.562
53.5
53.5
53.562
53.562
53.562
53.562
53.562
53.562
53.5
53.562
53.562
53.562
53.5
53.562
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.5
53.437
53.437
53.5
53.5
53.5
53.5
53.437
53.5
53.437
53.5
53.5
53.437
53.5
53.5
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.437
53.375
53.437
53.437
53.437
53.437
53.437
53.375
53.375
53.375
53.437
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.375
53.312
53.312
53.375
53.375
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.312
53.25
53.312
53.312
53.312
53.312
53.312
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.25
53.187
53.25
53.187
53.25
53.25
53.25
53.187
53.187
53.25
53.187
53.25
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.187
53.125
53.125
53.187
53.187
53.187
53.187
53.187
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.125
53.062
53.125
53.125
53.062
53.125
53.125
53.125
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.062
53.0
53.062
53.062
53.0
53.062
53.062
53.0
53.062
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
53.0
52.937
53.0
52.937
53.0
53.0
53.0
52.937
53.0
53.0
53.0
53.0
53.0
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.937
52.875
52.937
52.937
52.937
52.937
52.937
52.875
52.937
52.937
52.875
52.937
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.875
52.812
52.875
52.875
52.812
52.875
52.875
52.812
52.812
52.875
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.812
52.75
52.812
52.812
52.812
52.812
52.812
52.75
52.812
52.75
52.812
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.75
52.687
52.75
52.75
52.75
52.75
52.687
52.687
52.75
52.75
52.687
52.75
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.687
52.625
52.687
52.625
52.625
52.625
52.687
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.625
52.562
52.625
52.625
52.625
52.562
52.625
52.562
52.625
52.562
52.625
52.625
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.562
52.5
52.562
52.562
52.562
52.562
52.562
52.5
52.5
52.562
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.5
52.437
52.5
52.437
52.437
52.5
52.437
52.5
52.5
52.5
52.5
52.437
52.5
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.437
52.375
52.375
52.437
52.437
52.375
52.437
52.437
52.437
52.437
52.375
52.375
52.437
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.375
52.312
52.312
52.312
52.312
52.375
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.312
52.25
52.25
52.25
52.312
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.25
52.187
52.187
52.25
52.25
52.25
52.25
52.187
52.187
52.187
52.25
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.187
52.125
52.187
52.187
52.187
52.187
52.125
52.125
52.187
52.187
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.125
52.062
52.062
52.125
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.062
52.0
52.0
52.0
52.0
52.062
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
51.937
51.937
52.0
52.0
52.0
52.0
52.0
52.0
52.0
52.0
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.875
51.875
51.937
51.875
51.937
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.812
51.875
51.875
51.875
51.875
51.875
51.812
51.812
51.812
51.875
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.812
51.812
51.812
51.812
51.75
51.812
51.812
51.812
51.812
51.812
51.75
51.812
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.625
51.625
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.625
51.687
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.5
51.562
51.5
51.562
51.562
51.5
51.5
51.562
51.562
51.562
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.437
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.5
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.437
51.375
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.375
51.375
51.375
51.375
51.312
51.375
51.312
51.375
51.375
51.375
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.25
51.312
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.187
51.187
51.25
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.125
51.187
51.125
51.187
51.125
51.187
51.187
51.187
51.125
51.187
51.187
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.125
51.125
51.125
51.125
51.125
51.062
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.062
51.125
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.062
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
50.937
51.0
50.937
51.0
51.0
50.937
51.0
51.0
51.0
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.875
50.875
50.937
50.875
50.937
50.937
50.875
50.937
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.812
50.875
50.812
50.875
50.875
50.875
50.875
50.812
50.875
50.875
50.875
50.812
50.875
50.875
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.75
50.812
50.75
50.812
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.75
50.75
50.75
50.687
50.75
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.625
50.625
50.625
50.625
50.562
50.625
50.625
50.625
50.625
50.625
50.562
50.562
50.625
50.625
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.5
50.562
50.5
50.562
50.5
50.562
50.5
50.562
50.5
50.5
50.562
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.437
50.5
50.437
50.5
50.5
50.5
50.5
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.375
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.375
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.25
50.312
50.312
50.312
50.312
50.312
50.25
50.25
50.312
50.312
50.312
50.312
50.25
50.25
50.25
50.25
50.25
50.25
50.312
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.187
50.187
50.25
50.25
50.187
50.25
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.187
50.187
50.187
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.062
50.125
50.125
50.062
50.062
50.125
50.125
50.125
50.125
50.125
50.062
50.125
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
49.937
50.0
49.937
50.0
49.937
49.937
49.937
50.0
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.875
49.875
49.875
49.875
49.875
49.937
49.875
49.937
49.937
49.937
49.937
50.0
50.0
50.062
50.062
50.062
50.062
50.125
50.125
50.125
50.125
50.187
50.187
50.187
50.187
50.25
50.25
50.25
50.25
50.312
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.5
50.562
50.562
50.562
50.562
50.562
50.562
50.625
50.625
50.562
50.625
50.625
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.812
50.812
50.875
50.875
50.875
50.875
50.875
50.875
50.937
50.937
50.875
50.937
50.937
50.937
51.0
51.0
51.0
51.0
51.0
51.062
51.062
51.062
51.062
51.062
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.187
51.187
51.187
51.187
51.125
51.187
51.187
51.187
51.187
51.187
51.25
51.187
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.312
51.312
51.312
51.25
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.375
51.375
51.312
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.5
51.5
51.5
51.5
51.437
51.5
51.5
51.5
51.5
51.5
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.812
51.75
51.75
51.812
51.75
51.75
51.812
51.812
51.812
51.75
51.812
51.812
51.812
51.812
51.75
51.812
51.812
51.812
51.75
51.812
51.812
51.812
51.75
51.812
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.812
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.687
51.687
51.687
51.75
51.75
51.75
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.562
51.625
51.562
51.625
51.625
51.562
51.562
51.625
51.562
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.562
51.625
51.562
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.562
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.562
51.562
51.562
51.562
51.562
51.562
51.625
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.5
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.5
51.562
51.5
51.562
51.562
51.562
51.562
51.5
51.562
51.5
51.5
51.562
51.562
51.562
51.5
51.5
51.5
51.5
51.5
51.5
51.562
51.5
51.562
51.5
51.5
51.5
51.5
51.562
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.437
51.375
51.437
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.437
51.375
51.375
51.437
51.375
51.437
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.375
51.312
51.375
51.375
51.312
51.375
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.25
51.25
51.25
51.312
51.25
51.312
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.187
51.187
51.25
51.25
51.25
51.25
51.187
51.25
51.187
51.25
51.187
51.187
51.187
51.187
51.187
51.25
51.187
51.25
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.125
51.187
51.187
51.125
51.187
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.062
51.125
51.062
51.125
51.125
51.062
51.125
51.125
51.062
51.125
51.125
51.125
51.125
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.062
51.0
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
50.937
51.0
51.0
51.0
51.0
51.0
50.937
50.937
51.0
50.937
50.937
51.0
51.0
51.0
51.0
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.875
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.937
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.812
50.812
50.875
50.875
50.875
50.875
50.812
50.875
50.875
50.875
50.875
50.875
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.75
50.812
50.812
50.812
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.687
50.75
50.75
50.687
50.687
50.75
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.625
50.625
50.687
50.687
50.625
50.625
50.625
50.687
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.625
50.625
50.562
50.625
50.562
50.625
50.625
50.562
50.625
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.5
50.562
50.5
50.562
50.562
50.562
50.5
50.5
50.562
50.5
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.437
50.5
50.437
50.5
50.5
50.5
50.5
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.375
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.25
50.312
50.312
50.312
50.312
50.25
50.312
50.25
50.312
50.25
50.25
50.25
50.312
50.312
50.25
50.312
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.187
50.187
50.25
50.25
50.25
50.187
50.25
50.187
50.25
50.25
50.25
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.125
50.187
50.125
50.125
50.125
50.125
50.187
50.125
50.187
50.187
50.187
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.062
50.125
50.125
50.125
50.125
50.125
50.062
50.062
50.125
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.062
50.0
50.062
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
49.937
50.0
50.0
50.0
49.937
50.0
50.0
50.0
49.937
50.0
50.0
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.875
49.875
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
50.0
50.0
50.062
50.062
50.125
50.062
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.187
50.187
50.187
50.25
50.312
50.312
50.312
50.312
50.312
50.375
50.375
50.375
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.5
50.5
50.5
50.5
50.5
50.5
50.562
50.562
50.562
50.562
50.562
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.75
50.75
50.75
50.75
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.875
50.875
50.875
50.937
50.937
50.937
50.937
50.937
51.0
51.0
51.062
51.062
51.062
51.062
51.062
51.062
51.125
51.125
51.125
51.062
51.125
51.062
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.187
51.125
51.187
51.187
51.187
51.187
51.125
51.187
51.187
51.125
51.125
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.25
51.25
51.25
51.312
51.25
51.312
51.312
51.312
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.437
51.437
51.437
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.5
51.5
51.437
51.437
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.437
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.812
51.812
51.75
51.75
51.75
51.75
51.75
51.812
51.812
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.812
51.75
51.812
51.75
51.812
51.812
51.75
51.812
51.75
51.812
51.812
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.687
51.75
51.687
51.75
51.687
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.687
51.687
51.75
51.687
51.687
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.687
51.75
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.75
51.687
51.75
51.687
51.75
51.687
51.75
51.75
51.75
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.5
51.5
51.562
51.562
51.562
51.562
51.5
51.5
51.562
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.437
51.437
51.5
51.5
51.437
51.5
51.437
51.437
51.5
51.5
51.5
51.5
51.5
51.437
51.5
51.5
51.437
51.5
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.375
51.437
51.437
51.437
51.437
51.375
51.437
51.437
51.437
51.437
51.375
51.437
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.375
51.375
51.375
51.375
51.375
51.312
51.375
51.312
51.375
51.375
51.375
51.375
51.375
51.312
51.312
51.312
51.375
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.25
51.25
51.312
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.187
51.25
51.25
51.25
51.187
51.25
51.25
51.187
51.25
51.25
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.125
51.187
51.125
51.125
51.187
51.187
51.125
51.187
51.125
51.187
51.187
51.187
51.187
51.125
51.187
51.187
51.187
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.062
51.062
51.062
51.125
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.062
51.062
51.0
51.062
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
50.937
51.0
51.0
51.0
50.937
51.0
50.937
50.937
51.0
51.0
50.937
51.0
51.0
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.875
50.937
50.937
50.937
50.937
50.937
50.875
50.875
50.875
50.937
50.937
50.937
50.937
50.937
50.875
50.875
50.937
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.812
50.812
50.875
50.875
50.812
50.812
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.812
50.875
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.75
50.812
50.812
50.75
50.75
50.75
50.812
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.687
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.687
50.687
50.625
50.625
50.625
50.687
50.687
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.625
50.625
50.625
50.625
50.625
50.562
50.625
50.625
50.625
50.625
50.562
50.625
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.5
50.5
50.5
50.562
50.562
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.437
50.5
50.437
50.437
50.5
50.5
50.5
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.375
50.437
50.437
50.375
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.25
50.312
50.312
50.25
50.312
50.312
50.312
50.312
50.312
50.25
50.25
50.312
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.187
50.25
50.25
50.25
50.25
50.25
50.187
50.25
50.25
50.25
50.25
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.125
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.187
50.125
50.125
50.125
50.187
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.062
50.062
50.125
50.125
50.125
50.125
50.125
50.062
50.125
50.062
50.062
50.125
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.062
50.062
50.0
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.062
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
49.937
50.0
50.0
49.937
50.0
50.0
49.937
50.0
50.0
50.0
50.0
50.0
50.0
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.875
49.875
49.875
49.937
49.937
49.875
49.937
49.937
49.937
50.0
50.0
50.0
50.062
50.062
50.125
50.062
50.125
50.062
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.187
50.187
50.25
50.25
50.25
50.312
50.312
50.375
50.375
50.375
50.375
50.312
50.312
50.312
50.375
50.312
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.312
50.312
50.375
50.375
50.375
50.375
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.5
50.562
50.562
50.5
50.562
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.562
50.5
50.562
50.562
50.562
50.625
50.625
50.562
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.812
50.812
50.875
50.875
50.875
50.875
50.875
50.875
50.937
50.937
50.937
50.937
51.0
50.937
51.0
51.0
51.062
51.062
51.062
51.062
51.125
51.125
51.125
51.125
51.125
51.125
51.187
51.187
51.187
51.187
51.187
51.187
51.25
51.187
51.187
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.375
51.312
51.375
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.375
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.5
51.437
51.437
51.5
51.5
51.5
51.5
51.5
51.5
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.687
51.625
51.687
51.625
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.625
51.625
51.625
51.625
51.687
51.625
51.625
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.75
51.75
51.687
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.687
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.687
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.625
51.687
51.625
51.687
51.625
51.687
51.625
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.625
51.687
51.625
51.687
51.687
51.687
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.5
51.5
51.5
51.562
51.5
51.562
51.562
51.5
51.562
51.5
51.5
51.5
51.5
51.562
51.5
51.5
51.562
51.562
51.562
51.562
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.5
51.437
51.5
51.437
51.437
51.5
51.437
51.5
51.5
51.437
51.437
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.312
51.312
51.375
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.25
51.312
51.25
51.312
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.187
51.25
51.25
51.25
51.187
51.187
51.187
51.25
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.125
51.125
51.187
51.187
51.187
51.125
51.125
51.187
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.125
51.062
51.125
51.125
51.125
51.125
51.062
51.125
51.125
51.125
51.125
51.062
51.125
51.125
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.0
51.0
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.062
51.062
51.062
51.062
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
50.937
50.937
51.0
50.937
50.937
51.0
51.0
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.937
50.937
50.875
50.937
50.875
50.937
50.937
50.937
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.812
50.875
50.875
50.875
50.875
50.812
50.875
50.812
50.812
50.875
50.875
50.875
50.812
50.875
50.812
50.875
50.812
50.812
50.875
50.812
50.812
50.812
50.812
50.875
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.75
50.812
50.75
50.75
50.75
50.812
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.812
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.687
50.75
50.687
50.75
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.687
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.562
50.562
50.562
50.562
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.625
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.5
50.562
50.562
50.5
50.5
50.562
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.5
50.5
50.437
50.437
50.437
50.5
50.5
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.375
50.375
50.437
50.375
50.375
50.375
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.375
50.375
50.312
50.312
50.312
50.312
50.375
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.25
50.25
50.312
50.312
50.25
50.25
50.312
50.25
50.312
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.187
50.25
50.187
50.25
50.25
50.187
50.187
50.187
50.25
50.25
50.187
50.25
50.25
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.187
50.187
50.187
50.125
50.125
50.187
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.062
50.125
50.125
50.062
50.125
50.125
50.062
50.125
50.125
50.125
50.125
50.062
50.125
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.062
50.062
50.062
50.0
50.062
50.0
50.062
50.062
50.062
50.062
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
49.937
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
49.937
49.937
50.0
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.937
49.875
49.875
49.937
49.937
49.937
49.937
49.937
49.937
50.0
50.0
50.062
50.062
50.062
50.062
50.125
50.125
50.187
50.187
50.187
50.25
50.25
50.312
50.312
50.375
50.375
50.375
50.375
50.375
50.375
50.437
50.437
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.375
50.375
50.375
50.375
50.375
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.5
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.625
50.562
50.625
50.625
50.625
50.625
50.625
50.687
50.687
50.687
50.687
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.812
50.75
50.812
50.812
50.812
50.812
50.812
50.875
50.875
50.812
50.875
50.875
50.875
50.875
50.875
50.875
50.937
50.937
51.0
51.0
51.0
51.0
51.0
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.187
51.187
51.187
51.187
51.187
51.187
51.125
51.187
51.125
51.125
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.25
51.187
51.25
51.187
51.25
51.25
51.25
51.312
51.25
51.312
51.312
51.312
51.312
51.375
51.312
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.437
51.437
51.437
51.375
51.437
51.437
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.437
51.5
51.5
51.5
51.5
51.5
51.437
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.687
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.75
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.75
51.75
51.687
51.687
51.75
51.75
51.687
51.75
51.75
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.75
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.625
51.687
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.562
51.562
51.625
51.625
51.625
51.625
51.562
51.625
51.625
51.562
51.562
51.625
51.625
51.625
51.625
51.625
51.562
51.562
51.562
51.562
51.625
51.625
51.562
51.562
51.562
51.625
51.625
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.5
51.437
51.5
51.437
51.437
51.437
51.5
51.5
51.437
51.5
51.437
51.5
51.5
51.5
51.5
51.5
51.437
51.437
51.5
51.5
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.375
51.375
51.375
51.437
51.375
51.437
51.375
51.437
51.437
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.312
51.312
51.375
51.375
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.312
51.375
51.375
51.312
51.375
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.25
51.312
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.187
51.25
51.187
51.187
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.25
51.187
51.25
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.187
51.125
51.187
51.187
51.125
51.187
51.187
51.125
51.187
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.125
51.062
51.125
51.125
51.062
51.125
51.062
51.125
51.062
51.062
51.125
51.062
51.125
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.062
51.0
51.062
51.062
51.0
51.062
51.0
51.062
51.0
51.062
51.062
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
51.0
50.937
51.0
51.0
51.0
51.0
51.0
51.0
50.937
50.937
51.0
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.937
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.875
50.812
50.875
50.812
50.875
50.875
50.875
50.812
50.875
50.875
50.812
50.875
50.875
50.875
50.812
50.875
50.875
50.812
50.875
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.812
50.75
50.812
50.812
50.75
50.75
50.75
50.812
50.812
50.812
50.812
50.812
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.75
50.75
50.75
50.75
50.75
50.75
50.75
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.687
50.687
50.687
50.687
50.625
50.687
50.687
50.687
50.687
50.687
50.687
50.625
50.687
50.687
50.687
50.687
50.687
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.562
50.625
50.625
50.625
50.625
50.625
50.625
50.625
50.562
50.625
50.562
50.562
50.625
50.625
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.5
50.5
50.562
50.5
50.562
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.437
50.5
50.5
50.5
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.437
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.312
50.375
50.312
50.375
50.312
50.375
50.375
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.25
50.312
50.312
50.312
50.312
50.312
50.312
50.312
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.25
50.187
50.25
50.25
50.25
50.187
50.25
50.25
50.25
50.25
50.25
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.187
50.125
50.187
50.125
50.187
50.187
50.187
50.187
50.125
50.125
50.187
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.125
50.062
50.125
50.125
50.125
50.062
50.125
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.062
50.0
50.062
50.062
50.062
50.0
50.0
50.062
50.062
50.0
50.0
50.0
50.062
50.062
50.062
50.062
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
50.0
49.937
50.0
49.937
49.937
49.937
50.0
50.0
49.937
49.937
50.0
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.937
49.937
49.937
49.937
49.875
49.937
49.875
49.937
49.937
49.937
49.937
49.937
49.937
49.875
49.875
49.937
49.937
49.875
49.937
49.937
49.937
50.0
50.0
50.062
50.062
50.062
50.062
50.062
50.125
50.125
50.125
50.125
50.125
50.187
50.187
50.25
50.25
50.312
50.375
50.375
50.437
50.375
50.437
50.437
50.437
50.437
50.437
50.437
50.375
50.437
50.375
50.375
50.375
50.375
50.375
50.375
50.375
50.437
50.375
50.437
50.437
50.437
50.437
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.5
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.5
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.562
50.625
50.625
50.625
50.562
50.625
50.625
50.625
50.625
50.625
50.687
50.687
50.687
50.687
50.687
50.75
50.75
50.75
50.75
50.75
50.75
50.812
50.75
50.812
50.812
50.812
50.812
50.875
50.875
50.875
50.875
50.875
50.937
50.875
50.937
50.937
51.0
50.937
51.0
51.0
51.062
51.062
51.062
51.125
51.062
51.125
51.187
51.125
51.125
51.187
51.187
51.187
51.25
51.25
51.25
51.25
51.25
51.25
51.312
51.312
51.312
51.312
51.312
51.25
51.312
51.25
51.25
51.312
51.312
51.312
51.312
51.25
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.312
51.375
51.312
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.375
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.437
51.5
51.437
51.437
51.5
51.437
51.5
51.5
51.5
51.5
51.5
51.5
51.562
51.562
51.5
51.562
51.562
51.562
51.562
51.562
51.562
51.562
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.625
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.625
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.75
51.687
51.687
51.687
51.75
51.687
51.687
51.75
51.687
51.687
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.812
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.75
51.812
51.812
51.812
51.75
51.75
51.812
51.812
51.812
51.75
51.75
51.812
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.875
51.875
51.812
51.875
51.875
51.875
51.875
51.875
51.875
51.937
51.875
51.937
51.875
51.875
51.937
51.937
51.937
51.875
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.875
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.875
51.937
51.937
51.937
51.937
51.937
51.875
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.937
51.875
51.875
51.937
51.937
51.937
51.937
51.937
51.875
51.875
51.937
51.937
51.937
51.937
51.937
51.875
51.875
51.937
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.875
51.812
51.875
51.875
51.875
51.812
51.875
51.875
51.875
51.875
51.875
51.812
51.875
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.75
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.75
51.812
51.812
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.75
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.812
51.75
51.812
51.812
51.75
51.75
51.75
51.812
51.812
51.812
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.75
51.75
51.687
51.75
51.687
51.75
51.75
51.75
51.75
51.75
51.687
51.75
51.75
51.687
51.75
51.687
51.75
51.75
51.687
51.75
51.687
51.75
51.75
51.75
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687
51.687

In [75]:
with open('temperature3.pkl', 'wb') as f:
    pickle.dump(np.array(temperatures), f)

In [76]:
with open('temperature3.csv', 'w') as f:
    for v in temperatures:
        f.write(str(v) + '\n')

In [77]:
interface.close()

In [78]:
temperatures[-1]


Out[78]:
(datetime.datetime(2017, 1, 7, 23, 19, 57, 132990), 51.687, False)

In [79]:
start_time


Out[79]:
datetime.datetime(2017, 1, 7, 20, 19, 58, 131881)

In [81]:
plt.figure()
plt.plot([t[0] for t in temperatures], [t[1] for t in temperatures])


Out[81]:
[<matplotlib.lines.Line2D at 0x6f128890>]